Release 10.1A: OpenEdge Development:
Progress 4GL Handbook


Getting started with the 4GL—the Progress snowplow

Have you ever learned to downhill ski?

The first thing the ski instructors teach you is how to do the snowplow by moving the tips of your skis close together so you can control your descent down the hill as you learn to keep your balance. (If you were really young when you learned, they probably talked to you about making a piece of pie, right?)

Then what is the second thing they teach you, after you can get down the hill safely? It is never to snowplow again, because you have to learn to ski with your skis parallel to ski well. The snowplow is just to get you started, to help you survive your first runs down the hill until you are ready to do things the right way.

This book uses a similar technique to show you how to use the Progress 4GL. The language and the tools that support it have evolved to the point where much of the work of building an application has been taken over by the development tools themselves. Because of this, the nature of the 4GL procedures you typically write has changed to take advantage of what the tools do for you, as well as to use the enhancements to the language that have appeared with each new release. So while it is important to learn the basics of how the language works and everything that you can do with it, once you understand these things you will want to let the OpenEdge tools generate much of your 4GL code for you, including many of the visual elements of the application and even some standard business logic.

One of the major development tools is the OpenEdge AppBuilder, a graphical design tool you can use both to build structured procedures for your 4GL code and to design and build windows, browses (or grids), menus, and the other parts of a GUI application. The AppBuilder is a code generator. When you lay out a window in the AppBuilder, it generates the 4GL code to define the window and all the controls that are in it. The AppBuilder can do a great deal more, defining not just graphical elements, but also the database access 4GL code needed to retrieve data from one or more database tables, display it, and update it, all without you having to write any code yourself at all.

Because the AppBuilder can generate this code for you, you won’t have to write it yourself in the applications you develop. But you need to be aware of what that code looks like and what it does for you, so that you can understand and appreciate how the code you do write fills in the blanks where the tools don’t do everything you need.

In Chapter 5, "Examining the Code the AppBuilder Generates," you’ll look at some of that AppBuilder-generated code as you learn how to define a graphical application. After that chapter, you won’t have reason to write that kind of code very often at all. This book shows you the basics of what the AppBuilder does and how to use it. Other manuals in the OpenEdge documentation set provide details on how to use the AppBuilder and related tools that are part of the OpenEdge Application Development Environment (ADE).

You can use what you learn from this book to build OpenEdge applications in a variety of ways, including using some of the newer constructs to extend and enhance an existing application written in an earlier version of the 4GL.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095